home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / AMT / Moonbase Engine / Moonbase Engine 1.2 / About Moonbase Engine 1.2
Encoding:
Text File  |  1996-02-22  |  7.2 KB  |  318 lines  |  [TEXT/ttxt]

  1.  
  2. About Moonbase Engine 1.2
  3.  
  4. The Moonbase Engine is a simple extension of the AMT Minimal Engine.  The only difference being the addition of several Moonbase actions that simply exploit certain untapped features of the AMT Minimal Engine.  
  5.  
  6. There are no Moonbase Codes - the additional Moonbase actions are only required at the Apple Media Tool level.  Once you save your project as text you are back to the minimum.  Therefore to build a title you must use the Minimal Codes as supplied with the AMT Minimal Engine.  
  7.  
  8. The primary purpose in creating the Moonbase Engine was to get additional features to Apple Media Tool users without risking their projects to "as is" code bases.  The simplicity of the Moonbase Engine also provides an excellent opportunity for novice engine builders to see some basics of engine building.  It is a good base to build on.  
  9.  
  10.  
  11. Using Moonbase Engine 1.2
  12.  
  13. As the Moonbase Engine is simply an extension of the AMT Minimal Engine there is not a lot to learn once you understand how the AMT Minimal Engine works.  The "Add Moonbase" menu item has been added to the "Action" menu to faciliate the addition of Moonbase actions into your projects.  
  14.  
  15. Action menu:  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28. The Moonbase actions are described as follows:-
  29.  
  30.  
  31. Scroll by
  32.  
  33. The "Scroll by" action scrolls the targeted picture or text by the number of pixels as specified in the parameters.  
  34.  
  35. Target types:
  36.  
  37.     (object) Picture handler 
  38.     (object) Picture Scroller handler 
  39.     (object) Text handler 
  40.     (object) Text Scroller handler 
  41.  
  42. Operation code:
  43.  
  44.         theTarget.ScrollBy(-(theX), -(theY));
  45.  
  46. Parameters dialog:
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57. Scroll to
  58.  
  59. The "Scroll to" action scrolls the targeted picture or text to the position as specified in the parameters.  
  60.  
  61. Target types:
  62.  
  63.     (object) Picture handler 
  64.     (object) Picture Scroller handler 
  65.     (object) Text handler 
  66.     (object) Text Scroller handler 
  67.  
  68. Operation code:
  69.  
  70.         theTarget.ScrollBy(-(theX) - theTarget.ScrollX, -(theY) - theTarget.ScrollY);
  71.  
  72. Parameters dialog:
  73.  
  74.  
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  
  81.  
  82.  
  83. Scroll to Cell
  84.  
  85. The "Scroll to Cell" action scrolls the targeted picture or text to a position, scaled by its on-screen size, as specified in the parameters.  (The size of a cell is equal to the on-screen size of the targeted picture or text.)  
  86.  
  87. Picture cells act as psuedo icons and can be used to implement simple button behaviour, achieved by scrolling to cells within the same object according to user events.  
  88.  
  89. Target types:
  90.  
  91.     (object) Picture handler 
  92.     (object) Picture Scroller handler 
  93.     (object) Text handler 
  94.     (object) Text Scroller handler 
  95.  
  96. Operation code:
  97.  
  98.         theTarget.ScrollBy(-(theX * theTarget.Width) - theTarget.ScrollX, 
  99.                         -(theY * theTarget.Height) - theTarget.ScrollY);
  100.  
  101. Parameters dialog:
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112. Set Duration
  113.  
  114. The "Set Duration" action sets the targeted objects duration to either the time, or a randomly generated time within the time and the maximum time, as specified in the parameters.  
  115.  
  116. A novelty use of the randomize feature is to start two objects with newly created random durations and the first object to finish gets to determine what happens next.  
  117.  
  118. Target types:
  119.  
  120.     (object) Empty handler 
  121.     (object) Color handler 
  122.     (object) Picture handler 
  123.     (object) Picture Scroller handler 
  124.     (object) Text handler 
  125.     (object) Text Scroller handler 
  126.     (object) Field handler 
  127.  
  128. Operation code (normal):
  129.  
  130.         theTarget.Duration := theTime;
  131.  
  132. Operation code (random):
  133.  
  134.         theTarget.Duration := oRANDOM.Value(theTime, theMaximumTime);
  135.  
  136. Parameters dialog:
  137.  
  138.  
  139.  
  140.  
  141.  
  142.  
  143.  
  144.  
  145.  
  146.  
  147. Step by Time
  148.  
  149. The "Step by Time" action moves the targeted movie or flipbook on (or back) by the time as specified in the parameters.  
  150.  
  151. Target types:
  152.  
  153.     (object) Movie handler 
  154.     (object) Movie Controller handler 
  155.     (object) Flipbook handler 
  156.  
  157. Operation code:
  158.  
  159.         theTarget.StepBy(theTime);
  160.  
  161. Parameters dialog:
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172. Use Palette of
  173.  
  174. The "Use Palette of" action sets the screen palette to that of the targeted picture.  
  175.  
  176. Target types:
  177.  
  178.     (object) Picture handler 
  179.     (object) Picture Scroller handler 
  180.     (object) Flipbook handler 
  181.  
  182. Operation code:
  183.  
  184.         theTarget.Supplier.UpdateLoadedData();
  185.  
  186. Parameters dialog:
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195. All Links Merge
  196.  
  197. The "All Links Merge" action merges the targeted screen into the screen or screens in the binder screen chain.  A single screen of common parts can be shared across any number of given screens, resulting in more efficient runtimes and easier project maintenance.  
  198.  
  199. CAUTION: Any merging procedure should only ever be called once (merging is accumulative).  It is advisable that merging procedures be performed at the root screen and that the root screen be not returned to.  
  200.  
  201. Example:
  202.  
  203.     Pop All Links
  204.     Push Link "Scene 1"
  205.     Push Link "Scene 2"
  206.     Push Link "Scene 3"
  207.     All Links Merge "Scene Common Parts"
  208.     Pop All Links
  209.  
  210. Target types:
  211.  
  212.     (screen) container 
  213.  
  214. Operation code:
  215.  
  216.         theTarget.Binder.EachUp(Merge, theTarget);
  217.  
  218. Parameters dialog:
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227. Pop Link
  228.  
  229. The "Pop Link" action removes the most recent screen (which is not the current screen) from the binder screen chain.  (Each "Go to" action adds the current screen to the binder screen chain.)  
  230.  
  231. Target types:
  232.  
  233.     (document) binder 
  234.  
  235. Operation code:
  236.  
  237.         if oBinder.Count() > 0 then
  238.                 oBinder.Pop();
  239.         end;
  240.  
  241. Parameters dialog:
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250. Pop All Links
  251.  
  252. The "Pop All Links" action removes every screen from the binder screen chain.  The "Go Back to Root" action also removes every screen from the binder screen chain but it transitions to the root screen as well which may not always be desirable.  (Each "Go to" action adds the current screen to the binder screen chain.)  
  253.  
  254. Target types:
  255.  
  256.     (document) binder 
  257.  
  258. Operation code:
  259.  
  260.         oBinder.Empty();
  261.  
  262. Parameters dialog:
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271. Push Link
  272.  
  273. The "Push Link" action causes the targeted screen to be added to the binder screen chain.  It does not cause a transition to the targeted screen, to do so would require a following "Go Back" action and in such a case the transitioned screen would not be evident in the binder screen chain.  This is useful for transitioning to screens without ever adding the current screen to the binder screen chain.  
  274.  
  275. Target types:
  276.  
  277.     (screen) container 
  278.  
  279. Operation code:
  280.  
  281.         oBinder.Push(theScreen);
  282.  
  283. Parameters dialog:
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.  
  291.  
  292. Engine Builders Note
  293.  
  294. In order to build the Moonbase Engine sources you will need to drag a copy of the UserStartup•keyMoonbase file to your MPW folder.  Start or restart MPW and locate your keyMoonbase folder as requested, then set your project to the AMTE folder located within the Moonbase Engine Sources folder.  
  295.  
  296.  
  297. Contacting Moonbase
  298.  
  299. If you are interested in learning more about our company, or want to offer some feedback on the Moonbase Engine or its sources, please contact us.  We look forward to hearing from you.  
  300.  
  301.         Moonbase Enterprises Pty Ltd
  302.         34 Dunmore Street
  303.         Toowoomba QLD 4350
  304.         Australia
  305.  
  306.         Australia Voice: (076) 384 434
  307.         Australia Fax: (076) 384 134
  308.  
  309.         Voice: International + 61 76 384 434
  310.         Fax: International + 61 76 384 134
  311.  
  312.         Email: AUST0758@AppleLink.Apple.Com
  313.  
  314.  
  315. © 1996 Moonbase Enterprises Pty Ltd (ACN 072 298 554).  All Rights Reserved.  
  316.  
  317. THE MATERIALS CONTAINED WITHIN THE MOONBASE FOLDER ON THIS COMPACT DISC ARE PROVIDED BY MOONBASE ENTERPRISES PTY LTD (ACN 072 298 554) "AS IS".  WITH RESPECT TO SUCH MATERIALS, MOONBASE ENTERPRISES PTY LTD (ACN 072 298 554) PROVIDES NO WARRANTY, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.  
  318.